COVER PAGE SMEDLEY'S GENERAL PURPOSE SCIENTIFIC CALCULATOR _______________________________________________ VERSION 1.0 +-------------------------------------------------------------------+ |+-------------------------+ +---------+ +-----------+ +-----------+| || File Chain Options | | Dec Deg | | 1-01-93 | | 10:30 AM || |+-------------------------+ +---------+ +-----------+ +-----------+| |+-------------------------------------+ +---+ +---+ +---+ +---+ [*]| || | |D:S| |CLR| |RCL| |STO| [*]| || Entry Window | +---+ +---+ +---+ +---+ | || || | |FIX| |WIN| |DRG| |+:-| | || |+-------------------------------------+ +---+ +---+ +---+ +---+ | || |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ | || || Lab Val Dec Sci | | Lab Val Dec Sci | |Sin| |Cos| |Tan| |Inv| | || ||-----------------| |-----------------| +---+ +---+ +---+ +---+ | || ||[ Value Window ]| |[ Value Window ]| |Log| |Ln | |Pi | |Hyp| | || ||-----------------| |-----------------| +---+ +---+ +---+ +---+ | || ||[Rn] [ Label ]| |[Rn] [ Label ]| |Abs| |Ran| | ! | | e | |S|| |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ |L|| |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ |I|| || Lab Val Dec Sci | | Lab Val Dec Sci | |Mod| |Int| | ( | | ) | |D|| ||-----------------| |-----------------| +---+ +---+ +---+ +---+ |E|| ||[ Value Window ]| |[ Value Window ]| |[] | | ^ | | E | | / | | || ||-----------------| |-----------------| +---+ +---+ +---+ +---+ | || ||[Rn] [ Label ]| |[Rn] [ Label ]| | 7 | | 8 | | 9 | | * | | || |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ | || |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ | || || Lab Val Dec Sci | | Lab Val Dec Sci | | 4 | | 5 | | 6 | | - | | || ||-----------------| |-----------------| +---+ +---+ +---+ +---+ | || ||[ Value Window ]| |[ Value Window ]| | 1 | | 2 | | 3 | | + | | || ||-----------------| |-----------------| +---+ +---+ +---+ +---+ | || ||[Rn] [ Label ]| |[Rn] [ Label ]| | 0 | | . | | = | | " | | || |+-----------------+ +-----------------+ +---+ +---+ +---+ +---+ | || |+-------------------------------------+ +---------+ +---------+ | || ||[ Message Window ]| | SELECT | | ASSIGN | | || |+-------------------------------------+ +---------+ +---------+ [*]| +-------------------------------------------------------------------+ Copyright (C) 1993 by Smedley's Software House All Rights Reserved Smedley's Software House 132 N. El Camino Real, # 327 Encinitas, CA 92024 T A B L E O F C O N T E N T S _________________________________________________________________ INTRODUCTION 1 Features . . . . . . . . . . . . . . . . . . . . . . . . . 1 Requirements . . . . . . . . . . . . . . . . . . . . . . . 2 Conventions . . . . . . . . . . . . . . . . . . . . . . . 2 Getting Started . . . . . . . . . . . . . . . . . . . . . 3 Printing the Manual . . . . . . . . . . . . . . . . . . . 4 CHAPTER 1 -- THE DISPLAY 5 Main Banner . . . . . . . . . . . . . . . . . . . . . . . 5 Menu Display . . . . . . . . . . . . . . . . . . . . . 5 Mode Display . . . . . . . . . . . . . . . . . . . . . 5 Date Display . . . . . . . . . . . . . . . . . . . . . 5 Time Display . . . . . . . . . . . . . . . . . . . . . 5 Entry Window . . . . . . . . . . . . . . . . . . . . . . 6 Registers . . . . . . . . . . . . . . . . . . . . . . . . 6 Register Banners . . . . . . . . . . . . . . . . . . . 6 Value Windows . . . . . . . . . . . . . . . . . . . . 7 Register Buttons . . . . . . . . . . . . . . . . . . . 7 Label Windows . . . . . . . . . . . . . . . . . . . . 7 Slide Buttons . . . . . . . . . . . . . . . . . . . . . . 7 Action Buttons . . . . . . . . . . . . . . . . . . . . . . 8 Function Buttons . . . . . . . . . . . . . . . . . . . . . 8 Message Window . . . . . . . . . . . . . . . . . . . . . 9 CHAPTER 2 -- CALCULATOR OPERATIONS 10 Starting and Quitting . . . . . . . . . . . . . . . . . . 10 Starting . . . . . . . . . . . . . . . . . . . . . . . 10 Initial Conditions . . . . . . . . . . . . . . . . . . 10 The Desktop File . . . . . . . . . . . . . . . . . . . 11 The Temporary File . . . . . . . . . . . . . . . . . . 11 The Text File . . . . . . . . . . . . . . . . . . . . 11 The Settings File . . . . . . . . . . . . . . . . . . 12 Working with Files . . . . . . . . . . . . . . . . . . 12 Quitting . . . . . . . . . . . . . . . . . . . . . . . 13 Internal Data . . . . . . . . . . . . . . . . . . . . . . 13 Numeric Values and Ranges . . . . . . . . . . . . . . 14 Conventions and Conversions . . . . . . . . . . . . . 14 Register Values and Equations . . . . . . . . . . . . 14 Observing Operator Precedence . . . . . . . . . . . . 15 -i- Action Button Processing . . . . . . . . . . . . . . . . . 16 [D:S] - Decimal or Scientific . . . . . . . . . . . . 17 [CLR] - Clear . . . . . . . . . . . . . . . . . . . . 17 [RCL] - Reclaim Register . . . . . . . . . . . . . . . 18 [STO] - Store Register . . . . . . . . . . . . . . . . 18 [FIX] - Fix Decimal Point . . . . . . . . . . . . . . 19 [WIN] - Change Entry Window . . . . . . . . . . . . . 20 [DRG] - Degrees, Radians, and Gradients . . . . . . . 21 [+:-] - Plus or Minus . . . . . . . . . . . . . . . . 21 [SELECT] - Select Register . . . . . . . . . . . . . . 22 [ASSIGN] - Perform Calculation . . . . . . . . . . . . 23 Register Options Processing 23 [Lab] - Reference by Label . . . . . . . . . . . . . . 24 [Val] - Reference by Value . . . . . . . . . . . . . . 24 [Dec] - Decimal Format . . . . . . . . . . . . . . . . 25 [Sci] - Scientific Format . . . . . . . . . . . . . . 25 [Label] - Label Assignment . . . . . . . . . . . . . . 25 Function Button Processing . . . . . . . . . . . . . . . . 26 [Sin] - Sine Function . . . . . . . . . . . . . . . . 27 [Cos] - Cosine Function . . . . . . . . . . . . . . . 27 [Tan] - Tangent Function . . . . . . . . . . . . . . . 27 [Inv] - Inverse Function Specifier . . . . . . . . . . 27 [Hyp] - Hyperbolic Function Specifier . . . . . . . . 28 [Abs] - Absolute Value Function . . . . . . . . . . . 28 [Ran] - Random Number Function . . . . . . . . . . . . 28 [Mod] - Modulus Remainder Function . . . . . . . . . . 28 [Int] - Modulus Integer Function . . . . . . . . . . . 28 [Log] - Common Logarithm Function . . . . . . . . . . 29 [Ln ] - Natural Logarithm Function . . . . . . . . . . 29 [Pi ] - Pi Specifier . . . . . . . . . . . . . . . . . 29 [ e ] - Natural Logarithm Specifier . . . . . . . . . 29 [ E ] - Scientific Notation Specifier . . . . . . . . 29 [ ! ] - Factorial Operator . . . . . . . . . . . . . . 29 [ ^ ] - Power Operator . . . . . . . . . . . . . . . . 29 [ / ] - Divide Operator . . . . . . . . . . . . . . . 29 [ * ] - Multiply Operator . . . . . . . . . . . . . . 29 [ + ] - Addition Operator . . . . . . . . . . . . . . 30 [ - ] - Subtraction Operator . . . . . . . . . . . . . 30 [ . ] - Decimal Point . . . . . . . . . . . . . . . . 30 [ = ] - Assignment Operator . . . . . . . . . . . . . 30 [ " ] - Comment Specifier . . . . . . . . . . . . . . 30 [ ( ] - Left Delimiter . . . . . . . . . . . . . . . . 30 [ ) ] - Right Delimiter . . . . . . . . . . . . . . . 30 [[ ]] - Space . . . . . . . . . . . . . . . . . . . . 30 Editor Control Commands . . . . . . . . . . . . . . . . . 30 The Line Editor . . . . . . . . . . . . . . . . . . . 30 The Entry Window Editor . . . . . . . . . . . . . . . 31 -ii- Equation Entry and Editing . . . . . . . . . . . . . . . . 32 Limitations . . . . . . . . . . . . . . . . . . . . . 32 Case Sensitivity . . . . . . . . . . . . . . . . . . . 33 Referencing Registers . . . . . . . . . . . . . . . . 33 Using Delimiters . . . . . . . . . . . . . . . . . . . 35 Using Comments . . . . . . . . . . . . . . . . . . . . 36 Error Detection and Display . . . . . . . . . . . . . 37 Creating Register Equation Chains . . . . . . . . . . . . 38 How Chains Work . . . . . . . . . . . . . . . . . . . 38 Order of Evaluation . . . . . . . . . . . . . . . . . 39 CHAPTER 3 -- MENUS AND OPTIONS 41 File Menu . . . . . . . . . . . . . . . . . . . . . . . . 41 New . . . . . . . . . . . . . . . . . . . . . . . . . 41 Open . . . . . . . . . . . . . . . . . . . . . . . . . 41 Save . . . . . . . . . . . . . . . . . . . . . . . . . 42 Save As . . . . . . . . . . . . . . . . . . . . . . . 43 Exit . . . . . . . . . . . . . . . . . . . . . . . . . 44 Quit . . . . . . . . . . . . . . . . . . . . . . . . . 44 Chain Menu . . . . . . . . . . . . . . . . . . . . . . . . 44 Link . . . . . . . . . . . . . . . . . . . . . . . . . 44 Display . . . . . . . . . . . . . . . . . . . . . . . 46 Exit . . . . . . . . . . . . . . . . . . . . . . . . . 46 Options Menu . . . . . . . . . . . . . . . . . . . . . . . 46 Mouse . . . . . . . . . . . . . . . . . . . . . . . . 46 Colors . . . . . . . . . . . . . . . . . . . . . . . . 47 Defaults . . . . . . . . . . . . . . . . . . . . . . . 48 Exit . . . . . . . . . . . . . . . . . . . . . . . . . 49 APPENDIX A -- RESERVED WORDS 50 APPENDIX B -- ERROR MESSAGES 51 -iii- INTRODUCTION _________________________________________________________________ Smedley's General Purpose Scientific Calculator is designed for those who would like to perform engineering and/or scientific calculations in a familiar and extremely flexible environment. _________________________________________________ Features Smedley's calculator is the next logical step in the natural evolution of the familiar hand-held scientific calculator. It provides calculations, visual representations, and recording operations beyond those of conventional calculators while still retaining that "look and feel" calculator users have come to expect. A brief summary of features is provided in the following: o A Graphical User Interface (GUI) environment operating under MS-DOS version 3.3 or later. o Keystroke processing for all functions and operations. o A fully functional mouse interface providing the capability to change mouse orientation and movement preferences. o The ability to change colors of the various objects that make up the calculator display. o Automatic recording of calculation results. o A prudently capable text editor for entering and editing mathematical expressions. o Floating point math functions that make use of an 80x87 math coprocessor chip if one is available (the chip is not required). They emulate the chip if one is not available. o A full featured mathematical equation parser which allows the use of standard delimiters (i.e. (),{}, and []) to "order" the manner in which expressions are evaluated. o The ability to place comments anywhere within a mathematical expression. o Sixteen memory registers, six of which are visable at any one time, for assignment of calculation results. -1- o The ability to change the way computational results are displayed and/or referenced for each memory register. o The ability to assign a symbolic "name" to each memory register and to use these "names" for referencing a register's contents within the body of a mathematical expression, and for assignment of computational results. o The ability to create a system of equations by "linking" memory registers together in a "chain". o Mathematical evaluation of the most commonly used functions, including: Trigonometry functions Hyperbolic functions Common logarithms Natural logarithms Power functions Modulus functions Random numbers Absolute numbers _________________________________________________ Requirements Smedley's calculator was designed to run on IBM PC computers, and all true IBM compatibles, that employ the Intel 80x86 family of micro-processor chips. The program requires DOS 3.3 or higher, a hard disk, a color VGA (640 x 480) or better monitor, and at least 256K of free memory space. The program also supports a mouse, although a mouse is not required. If you have a mouse it must be compatible with version 6.1 (or later) of the Microsoft Mouse. _________________________________________________ Conventions A description of the conventions used in this manual is provided in the following: o Click - Indicates that a mouse button action is to be taken. Unless otherwise specified, it refers to the "logical" left mouse button. The phrase "click on ..." means move the mouse cursor over the indicated object and press-release the left mouse button. o Brackets - Brackets [] are used to represent objects that appear on the calculator display such as [Sin], and console keyboard keys such as [Esc]. -2- o Braces - Braces {} are used to indicate text that is to be typed by you. Text of this type should not always be typed verbatim. Context sensitive descriptions will tell you when to type what you see, and when to type the formal "name" of something you see. o Plus - The plus sign (+), used within the context of a calculator command description, indicates a sequence of mouse or keyboard actions that are to be taken in the order presented. The plus sign is not typed. o Minus - The minus sign (-), used within the context of a calculator command description, indicates a "two key" key stroke combination where the first key is pressed and held while the second key is pressed, i.e. [Alt]-[F]. _________________________________________________ Getting Since this is the Shareware version of Smedley's Started General Purpose Scientific Calculator, and you are reading this manual, it is assumed that you have already "unzipped" the program package and the following files have been stored "somewhere" on your system's hard drive: o README.1ST - Important setup information o MANUAL.TXT - This manual o SCALC.EXE - The executable program o IMAGE.TXT - A facsimile of the calculator o QUICK.TXT - A quick reference guide o ORDER.TXT - The order form It is recommended (but not required) that you place these six files in their own directory. NOTE: The program itself does not care what name is used for its directory so you may use any name of your choice. You may also rename the executable file, or any of the other files, if you so choose. For purposes of illustration, it will be assumed that you have placed these files in a directory called "GPSCALC" on hard drive "C". To run the program: At the C:\ prompt, type "CD\GPSCALC" followed by [ENTER] to set GPSCALC as the current DOS directory, then type "SCALC" followed by [ENTER] to run the program. -3- IMPORTANT: The program, when executed, assumes the current directory is the user's "directory of choice" and will use this directory for all file operations initiated during the current session. _________________________________________________ Printing the Manual This manual was created using a standard ASCII text editor and honors the DOS text file format. Any reasonably capable text editor can be used to peruse and/or print this manual. The manual itself was designed to be printed at 60 lines per page. There are no embeded form feeds in the manual. The format of 60 lines per page was achieved by using carriage returns to provide the desired vertical spacing. If your text editor does not provide a way to specify the number of print lines per page you are free to edit this manual to match whatever formatting capabilities your text editor can provide. -4- CHAPTER 1 -- THE DISPLAY _________________________________________________________________ This chapter provides an overall description of the various objects that make up the calculator display. A facsimile of the calculator display is provided on the cover page of this manual for your reference. _________________________________________________ Main Banner The four "frames" that you see across the top of the calculator make up the "main banner". These will be described in the following paragraphs, in the order of their appearance, beginning with the left most frame. Menu Display - The menu display provides three selectable menu processing functions: (1) The File processor, (2) the Chain processor, and (3) the Options processor. See Chapter 3 in this manual for a complete description of each of these functions. Mode Display - The mode display shows the current selections in force for the main numerical control modes. The first of these, shown in the facsimile as "Dec", controls how calculation results are to be displayed in the "entry window". The two selections available for this mode are: o "Dec" -- Fixed decimal place format o "Sci" -- Scientific notation format The second control mode, shown in the facsimile as "Deg", governs how angular values are to be interpreted when used in conjunction with trigonometric functions. The three selections available for this mode are: o "Deg" -- Indicates decimal degrees o "Rad" -- Indicates radians o "Gra" -- Indicates decimal gradients See Chapter 2: "Action Button Processing", for more information about these control modes and their selection. Date Display - Displays the current date, if available from your system, in Month-Day-Year (mm-dd-yy) format. Time Display - Displays the current time, if available from your system, in Hours-Minutes (hh:mm) format followed by AM or PM as appropriate. -5- _________________________________________________ Entry Window The entry window, appearing just below the menu frame in the facsimile, is actually a text edit window where you may enter and edit mathematical equations and expressions for evaluation. The text editor supporting the entry window provides a set of editing features for this purpose, and the mathematical equation parser allows you to enter mathematical expressions in "free format". For a complete description of how to enter and edit equations see Chapter 2: "Equation Entry and Editing". The default size of the entry window is as shown in the facsimile. However, for those of you who like to type long (text) descriptions to go with your equations, the entry window can be expanded vertically to provide additional editing/viewing capabilities. For more information on how to change the entry window's size see Chapter 2: "Action Button Processing". _________________________________________________ Registers Smedley's calculator provides sixteen (16) memory registers for assignment of calculation results. When the entry window is in its default position, six (6) of these registers will be visible at any one time (the memory registers appear just below the entry window). Selection of which registers will be visible is provided by the slide buttons located on the right-hand side of the calculator display. See the paragraph on "Slide Buttons" later in this chapter. Each register display has four (4) components: A banner, a value window, a register ID button, and a label window. Each of these components is described in the paragraphs that follow. Register - The register banner at the top of the display Banners provides four (4) modes for controlling how numerical values are referenced and displayed. The first two modes, "Lab" and "Val", control how a register reference is to be presented to the entry window's text editor when used in conjunction with the calculator's "SELECT" feature: o "Lab" -- Use the Label o "Val" -- Use the Value -6- The other two modes, "Dec" and "Sci", control how numerical values assigned to the register are to be displayed: o "Dec" -- Fixed decimal place format o "Sci" -- Scientific notation format See Chapter 2: "Register Options Processing" for more information about these control modes and their selection. Value - The value window is where the numerical results Windows from a calculation are displayed, when assigned to a register. The display can accommodate up to fifteen (15) digits plus a decimal point. For more information on how numerical values are retained, converted and displayed, see Chapter 2: "Internal Data". Register - The register ID buttons are provided not only as Buttons means to identify individual registers, but also as a convenient way to "reference" a particluar register. For more information about how registers may be referenced, see Chapter 2: "Equation Entry and Editing". Label - The label window is provided as a means for you Windows to assign a meaningful symbolic "name" (label) to a register. This name may then be used in place of the register ID when referencing the contents of a register. See Chapter 2: "Register Options Processing", for more information on how labels are assigned and referenced. _________________________________________________ Slide Buttons The slide buttons, appearing on the right-hand side of the calculator display, are provided as a means for scrolling through the sixteen memory registers, bringing a new "pair" of registers into view as the middle slide button is moved up or down. The slide buttons work in conjunction with the current size of the entry window and will "logically" scroll the register displays up or down accordingly. If you have a mouse, clicking on the top slide button will reset the display so that the first two visible registers will be R1 and R2. Using a mouse and clicking on the bottom slide button will adjust the display such that the last two visible registers will be R15 and R16. -7- Using a mouse and clicking on the slide above the middle slide button will scroll the display up one pair and, conversly, clicking on the slide below the middle slide button will cause the display to scroll down one pair. Alternately, you may adjust the display by using the following keyboard keystroke combinations: o [Alt]-[Up Arrow] - Scroll up o [Alt]-[Down Arrow] - Scroll down _________________________________________________ Action Buttons The action buttons are so-named because they are designed to perform manipulative "actions" that are associated with calculator operations rather than those that are associated with mathematical functions. These buttons provide the ability to specify (and modify) the operational environment with respect to the interpretation, assignment, and display of calculation results. The action buttons consist of the first two rows of buttons, and the last row of buttons, on the right-hand side of the calculator, e.g: [D:S] [CLR] [RCL] [STO] [FIX] [WIN] [DRG] [+:-] . . . . [ SELECT ] [ ASSIGN ] For a complete description of the actions these buttons perform, refer to Chapter 2: "Action Button Processing". _________________________________________________ Function Buttons The function buttons are so-named because they either invoke specific mathematical functions or they assist in the creation of mathematical expressions. The function buttons consist of the nine rows of buttons on the right-hand side of the calculator, beginning with the third row and ending with the eleventh row, e.g: [Sin] [Cos] [Tan] [Inv] . . . . . . . . [ 0 ] [ . ] [ = ] [ " ] See Chapter 2: "Function Button Processing" for more information concerning how these buttons can be used to create mathematical expressions. -8- _________________________________________________ Message Window The message window, as its name implies, is the medium by which the calculator can communicate with the user. This communication takes form in one of two ways: o When an error is detected during calculator operations, a message describing the error condition will appear in this window . o When a calculator "action" is invoked, the message window becomes an "edit window" and the user is given the opportunity to enter any additional parameters that are required to complete the command. -9- CHAPTER 2 -- CALCULATOR OPERATIONS _________________________________________________________________ This chapter provides detailed descriptions and instructions for all functions and operations supported by Smedley's calculator. _________________________________________________ Starting and Quitting Although you can launch the calculator program (SCALC.EXE) from any directory, it is generally recommended that you first make the directory containing SCALC.EXE the current directory by using the DOS CD (change directory) command. Doing so will provide a single collection point for all calculator "sessions", and will ensure preservation of your desktop "preferences" from session to session. Starting - The following examples assume that SCALC.EXE resides in a root directory on your "C" drive named "GPSCALC". o To change directories and launch SCALC.EXE, first acquire the "C:\" prompt: Type: CD\GPSCALC and press [ENTER] Type: SCALC and press [ENTER] o To launch SCALC.EXE from within any other directory: Type: C:\GPSCALC\SCALC and press [ENTER] The key point to remember when launching the program is that it will only interact with files in the current directory. Initial - Each time SCALC.EXE is run, the program will Conditions first search the current directory looking for the desktop file (SCALC.DTP). If SCALC.DTP is not found, then a new SCALC.DTP file will be created at this time using SCALC.EXE generated default settings. If SCALC.DTP is found, then the settings contained therein will be used to establish initial desktop preferences for the current session. Next, the session's Temporary file (SCALC.TMP) is created for "logging" calculation results, and the default file names for the session's Text and Settings files are assigned. These are discussed later in this section. The calculator's memory registers and register displays are then initialized to their default states and calculator operations may begin. -10- The four file types which the calculator will interact with during a session are described in the following subsections. The Desktop - The desktop file (SCALC.DTP) initially contains File the default settings for the various colors that make up the calculator display, and the default settings that control mouse movement, display, and button orientation characteristics. These settings, which are automatically saved upon program termination, may be changed at any time during a session to reflect your personal preferences. More information on how to change these settings may be found in Chapter 3 under the heading entitled "Options Menu". NOTE: Changes made to these settings during a session are automatically written to the desktop file (SCALC.DTP) upon program termination. When the program is next executed, the saved settings will be retrieved and used during the calculator initialization process described above. The - During startup, a temporary file (SCALC.TMP) is Temporary created for "logging" all calculator operations File performed during the current session. It is automatically deleted upon program termination. Initially the Temporary file is "empty". Then, as you perform calculations, your equations and their respective numerical results are "logged" in this file. If you wish to save its contents (a record of your session) you may do so at any time by using the "File Save" or "File Save As" command options provided by the File Processing function. If the current session holds only an immediate interest, and you have no desire to save any record of calculations performed, then you need do nothing other than access the "File" menu, select the "Quit" option, and type [N] for "No" when a message appears in the message window giving you the opportunity to save the current Text and Settings files. The Text - The Text file is where the "logged" contents of File the Temporary file will be saved if you perform a "File Save" or "File Save As" operation. At startup the calculator will assign a default name for this file as follows: SCALCnn.TXT -11- Where "nn" is a number in the range 01--99 that reflects the next available default name. The number "nn" is reset to 01 after reaching 100. You may override this default name assignment at any time by accessing the File Processing menu and performing a "File Open", or "File Save As" operation. The Text file is designed to serve as a record of all calculator operations performed during a session. It is created and maintained in the standard DOS text file format. This allows you to use any text editor or word processor capable of reading DOS text files to review, edit, and print a session's Text file. The - The Settings file is where the current state of Settings your memory registers is saved when you perform File a "File Save" or "File Save As" operation. It serves as a companion file to your current Text file and is where the current banner settings, numerical values, symbolic names, and equation strings assigned to each register are stored if or when a "save" operation is performed. At startup, the same default file name prefix as was assigned to the Text file is assigned to this file. Then the file name extension ".SET" is added to complete the file name as shown in the following: SCALCnn.SET This same procedure is followed each time you change the name of your current Text file. For example: If you were to access the File Processing menu and perform a "File Save As" operation, and submitted the name of a new Text file called "MYFILE.TXT", the calculator would then create a companion Settings file called "MYFILE.SET" prior to performing the requested save operation. In this example, the files "MYFILE.TXT" and "MYFILE.SET" will then become the current Text and Settings files. REMEMBER: Each time you save the Temporary file to the current Text file, its companion Settings file will also be saved. Working with - Once the calculator has been initialized you may Files override the default file names assigned to the session's Text and Settings files by taking one of the following actions: -12- o Perform a "File Open" operation using a new Text file name. The new Text file and its companion Settings file will then be created, opened, and assigned as the current session files. o Perform a "File Open" operation using the name of an existing Text file. The named Text file and its companion Settings file will be opened and assigned as the current session files. You will also be given the option to "restore" the previous settings, or continue on with the current settings. o Perform a "File Save As" operation using a new Text file name. The new Text file and its companion Settings file will be created, opened, and assigned as the current session files. The current "state" of your session is then immediately saved to these files. o Perform a "File Save As" operation using the name of an existing Text file. This allows you to immediately overwrite the named Text and Settings files with the current "state" of your session. These files then become the current session files. To save the current "state" of your session to the current session files, you need only select the "File Save" option. The rest is automatic. Detailed instructions for performing the various File Processing functions described above can be found in Chapter 3 under the heading entitled: "File Menu". Quitting - The "File Quit" option provides the mechanism for terminating a session. When you select "Quit" from the File menu, you will be given an opportunity to save the current session, not to save the session, or to abort the request. If you do not elect to abort, your current session will be saved, or not saved as per choice, and the program will then terminate. NOTE: Session information is only saved if you take an explicit "save" action. However, any changes you make with respect to your desktop preferences during a session will automatically be saved to the desktop file upon termination. _________________________________________________ Internal Data This section provides detailed information about the internal operations of the calculator with -13- respect to numeric values and ranges, conventions and conversions, manipulation of register values and equations, and internal parsing precedence of mathematical operators. Numeric - Internally, the calculator maintains all numeric Values and values in a 64 bit floating point format that Ranges provides for 15 digits of precision within the following range: 2.225074E-308 to 1.797693E+308 The calculator also maintains internal constant values for Pi and the natural log specifier (e) as follows: Pi = 3.14159265358979 e = 2.71828182845905 Conventions - All mathematical computations performed by the and calculator use floating point numerical values, Conversions operations, and algorithms. When numerical values are entered, they are converted to their floating point equivalent prior to performing any arithmetic operation. All trigonometric operations involving circular functions are performed using radian values (360 degrees equals 2Pi radians). Conversions from degrees or gradients to radians, and back again, are performed internally based on the current [DRG] setting on the main banner. Owing to the fact that Inverse Trigonometric functions are many valued, the calculator will only return the "principal value" for Inverse functions as shown in the following: Degrees Radians Gradients ----------- -------------- ------------ Asin -90 to +90 -Pi/2 to +Pi/2 -100 to +100 Acos 0 to +180 0 to +Pi 0 to +200 Atan -90 to +90 -Pi/2 to +Pi/2 -100 to +100 Register - Numeric values assigned to memory registers are Values and maintained in two forms: The ASCII value as Equations displayed in the register's value window, and the internal floating point value from which the displayed value is derived. Additionally, the exact mathematical expression (as typed in the entry window) which assigned the resulting numerical value to the register is maintained for later recall at the user's discretion. When evaluating mathematical expressions that contain references to the contents of one or -14- more registers, the calculator's mathematical parser will retrieve the internally maintained floating point values for each register prior to performing the required computations. Observing - The order of precedence in which mathematical Operator operators are evaluated by the calculator, when Precedence parsing mathematical expressions, is listed in the following order from highest to lowest: 3. Unary (+,-), Factorial (!), Power (^) 2. *, /, Mod, Rem 1. +, - Some examples illustrating the application of this order of precedence are provided in the following: Expression Result ------------- ------ 6 * 3 + 4 22 6 + 3 * 4 18 6 + 4! * 3 78 6 + 10^2 * 3 306 6 + 20 Mod 3 8 6 * 20 Int 3 12 6 + 10^2/5 26 Although these rules of precedence are generally accepted within the engineering and scientific communities, you are encouraged to make use of the precedence control delimiters provided by Smedley's calculator to insure that mathematical expressions are not only more readable, but are also parsed as intended. For example, instead of entering expressions like these: 6 * 3 + 4 (which equals 22) 6 * 16^1/2 (which equals 48) You can control operator precedence evaluation by entering the expressions like this: 6 * (3 + 4) (which equals 42) 6 * 16^(1/2) (which equals 24) For additional information concerning the use of operator precedence control delimiters, see the paragraph entitled "Using Delimiters" in Chapter 2 under the section header: "Equation Entry and Editing". -15- _________________________________________________ Action Button Processing The action buttons occupy the first two rows of buttons, and the bottom row of buttons, located on the right-hand side of the calculator. For keystroke enthusiasts, each of these buttons has been assigned a corresponding function key from those provided by your console keyboard as shown in the following illustration: Action Buttons Keyboard Keys ----------------------- ------------------- [D:S] [CLR] [RCL] [STO] [F1] [F2] [F3] [F4] [FIX] [WIN] [DRG] [+:-] [F5] [F6] [F7] [F8] . . . . [ SELECT ] [ ASSIGN ] [F9] [F10] To initiate an action you may either use the mouse and click on the desired action button or press the corresponding function key. If you initiate an action using the mouse, and the selected action requires input of additional parameters, the action button's mnemonic label (i.e. "CLR") will appear in the message window. Additional parameters, as you enter them, will also appear in the message window until the action is either completed or aborted. IMPORTANT: An action initiated using the mouse must be completed using the mouse. Pressing a keyboard key will abort the selected action as will clicking the mouse over a non-legitimate object. As with the mouse, when you initiate an action by pressing its corresponding keyboard function key (i.e. [F2]) and the selection requires input of additional parameters, the action button's mnemonic label (i.e. "CLR") will appear in the message window. However, unlike with the mouse, the message window now becomes an "edit" window and a blinking edit cursor will appear. At this point you must use keyboard keystrokes to enter the required parameters. When you have entered the required parameters, press the [ENTER] key to complete the action. To abort the action, press the [ESC] key. For information about other edit control keys that are available to assist you in this process, see the paragraph entitled "The Line Editor", in the section "Editor Control Commands", later in this chapter. -16- NOTE: When using the keyboard "line editor" you must insert at least one "space" between each required parameter. Complete descriptions, with respect to purpose and initiation procedures, for each of these action buttons is provided in the paragraphs that follow. [D:S] - Decimal or Scientific: Allows you to specify how calculation results will be displayed in the entry window. This button allows you to "toggle" between two display formats: Decimal or Scientific. The current entry window display format selection is shown in the mode display frame on the main banner as either "Dec" or "Sci". To change selections, do one of the following: o Mouse: Click [D:S] o Keyboard: Type [F1] NOTE: This button only affects how calculation results are displayed in the entry window. It does not affect how results are displayed in register value windows. [CLR] - Clear: Allows you to "clear" the entry window or a register value window. Clearing the entry window causes the current entry window display to be erased and the edit cursor to be repositioned to the upper left corner of the display window. To clear the entry window, do one of the following: o Mouse: Click [CLR] + [WIN] o Keyboard: Type [F2] + {0} + [Enter] Clearing a register value window causes the window display to be "zeroed" and its equation string to be changed to reflect the assignment of a "zero" to the register. To clear a register value window, do one of the following: o Mouse: Click [CLR] + [Rn] Where: Rn is one of the sixteen register buttons, i.e. [R1] -- [R16] -17- o Keyboard: Type [F2] + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number NOTE: When a register is cleared, the equation strings for any chained registers will then be recomputed and their results re-displayed. For more information about "chaining", see the section entitled "Creating Register Equation Chains" later in this chapter. [RCL] - Reclaim Register: Allows you to "reclaim" the equation string associated with a particular register. When you create a mathematical expression and assign it to a register, the numerical result is displayed in the register's value window and the equation string (what you typed) is saved in the register's internal association table. If you then reclaim that register, the equation string (in its entirety) will be retrieved and inserted into the entry window display using the current edit cursor position as the insertion point. To reclaim an equation string, do one of the following: o Mouse: Click [RCL] + [Rn] Where: Rn is one of the sixteen register buttons, i.e. [R1] -- [R16] o Keyboard: Type [F3] + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number REMEMBER: The insertion point in the entry window display for a reclaimed equation string is the current edit cursor's position. Make sure the cursor is positioned where you want the insertion to begin before performing the reclaim operation. [STO] - Store Register: Allows you to assign the last value computed for entry window display, and its associated mathematical expression, to a register. When you enter a mathematical expression and request computation, but did not assign the result to a register, the calculator displays the result in the entry window and saves both -18- the result and the mathematical expression in the entry window's internal association table. Since the calculation result and its associated mathematical expression are preserved, a store register operation may be performed at any time by doing one of the following: o Mouse: Click [STO] + [Rn] Where: Rn is one of the sixteen register buttons, i.e. [R1] -- [R16] o Keyboard: Type [F4] + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number NOTE: When the store register operation is executed, the equation strings for any chained registers will be recomputed and their results will be re-displayed. [FIX] - Fix Decimal Point: Allows you to specify how many digits to the right of the decimal point in a numerical result will be displayed, when the display mode is set to "Dec", for both the entry window and each memory register. The default setting for the "Dec" display mode is "Integer", e.g. zero (0) decimal places. When the "Fix" setting is zero (0), numerical results will be rounded to the nearest integer. The maximum setting is fourteen (14) decimal places. To change the decimal point setting for the entry window, do one of the following: o Mouse: Click [FIX] + [WIN] + [n]..[n] + [ASSIGN] Where: [WIN] indicates the entry window and [n]..[n] means click one or two of the numerical function buttons (0--9) as required for the desired decimal point setting. o Keyboard: Type [F5] + {0} + {0--14} + [ENTER] Where: {0} indicates the entry window and {0--14} is the decimal point setting. -19- To change the decimal point setting for a memory register, do one of the following: o Mouse: Click [FIX] + [Rn] + [n]..[n] + [ASSIGN] Where: [Rn] is the register's ID button and [n]..[n] means click one or two of the numerical function buttons (0--9) as required for the desired decimal point setting. o Keyboard: Type [F5] + {1--16} + {0--14} + [ENTER] Where: {1--16} is asking for the register's ID number, and {0--14} is asking for the desired decimal point setting. NOTE: For decimal displays the calculator will always round results to the specified precision (decimal places). If the specified precision for a calculated result will cause the loss of significant digits in the display, the display will revert to scientific notation format. [WIN] - Change Entry Window: Allows you to change the vertical size of the entry window. There are three (3) sizes available as listed below: o Size 1: Three (3) lines of visable text o Size 2: Ten (10) lines of visable text o Size 3: Eighteen (18) lines of visable text Size 1 is the default size. However, you may select a different size at any time by doing one of the following: o Mouse: Click [WIN] + [n] Where: [n] is a numerical function button in the range of 1--3. o Keyboard: Type [F6] + {1--3} Where: {1--3} is the desired size. NOTE: The size of the entry window does not affect how many lines of text you may actually type, it merely determines how many lines of text are visable at any one time. -20- [DRG] - Degrees, Radians, and Gradients: Allows you to specify how angular values are to be interpreted by the trigonometric functions. Descriptions of these choices are provided in the following: o Degrees: Specifies that angular values are to be interpreted with respect to a "unit circle" of 360 degrees (or multiples thereof) where the fractional part of one degree is represented as a decimal value, i.e. 30.5 means an angular value of 30 and 1/2 degrees. o Radians: Specifies that angular values are to be interpreted with respect to a "unit circle" of 2Pi radians (or multiples thereof) where one radian = 360/(2*Pi) degrees. o Gradients: Specifies that angular values are to be interpreted with respect to a "unit circle" of 400 degrees (or multiples thereof) where the fractional part of one degree is represented as a decimal value, i.e. 40.5 means a gradient value of 40 and 1/2 degrees. This button allows you to "toggle" between these three choices by doing one of the following: o Mouse: Click [DRG] o Keyboard: Type [F7] When you toggle this button, the mode display frame on the main banner will show the current selection as follows: o "Deg" -- Degrees o "Rad" -- Radians o "Gra" -- Gradients CAUTION: This is a global specifier. When you change it you are effectively saying that from this point forward the new selection is to be honored for all calculations. Any calculation results obtained under a previous selection may produce erroneous results when referenced while the new selection is in force. [+:-] - Plus or Minus: Allows you to change the "sign" of a numerical value currently being displayed in a memory register's value window. If the sign of the current value is plus (+) it will be changed to minus (-) and vice versa. To change the sign do one of the followng: -21- o Mouse: Click [+:-] + [Rn] Where: Rn is one of the sixteen register buttons, i.e. [R1] -- [R16] o Keyboard: Type [F8] + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number NOTE: Changing the "sign" of a numeric value does not affect the associated equation string which created the original value. However, it will cause the equation strings for all chained registers to be recomputed and their results to be redisplayed. [SELECT] - Select Register: Provides a convenient way for you to select a target memory register for an assignment calculation taking the form: {target register} = {mathematical expression} Which means: Assign the result from evaluation of the mathematical expression appearing on the right hand side of the assignment operator (=) to the target register appearing on the left. To select a register do one of the following: o Mouse: Click [SELECT] + [Rn] Where: Rn is one of the sixteen register buttons, i.e. [R1] -- [R16] o Keyboard: Type [F9] + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number For purposes of illustration in the discussion that follows, R2 is assumed to be the desired target register and its lable is "Gamma". The select register action works in conjunction with the "Lab" - "Val" setting of the target register as follows: o If "Lab" is set when the select action is performed, the calculator will check to see if a label is present. In this case the label "Gamma" is present and the character string "Gamma = " (without the quotes) will appear in the entry window. If the label were not present, the register button label would be used instead, i.e. "R2 = ". -22- o If "Val" is set when the select action is performed, only the register button label is used, i.e. "R2 = ". o NOTE: When a select action is performed, the resulting character string will be inserted at the current cursor position in the entry window. For more information about the select register action, and assignment calculations in general, see "Equation Entry and Editing" later in this chapter. [ASSIGN] - Perform Calculation: This button is used to initiate a calculation or to signal completion of a "FIX" decimal point action (mouse only). When a calculation is initiated, the current equation (or mathematical expression) appearing in the entry window will be evaluated. The evaluation result is then assigned to either the entry window or, if present, the specified target register. To perform a calculation do one of the following: o Mouse: Click [ASSIGN] o Keyboard: Type [F10] NOTE: When a target register is specified that has one or more subordinate (chained) registers, their equation strings and register displays will be recomputed and redisplayed at this time. _________________________________________________ Register Options Each of the sixteen (16) memory registers can be Processing customized with respect to how numerical values are referenced and displayed. In addition, each register can be assigned a unique "label" which may be used within an equation or mathematical expression to represent its numerical value. For example, if the labels "x", "y", and "z" are currently assigned to registers R1, R2, and R3 respectively, then you could type an equation like this: x = y + z. Then, when the [ASSIGN] button or [F10] key is pressed, the calculators' mathematical parser will recognize these labels as "symbols" for register values and, in this case, will "fetch" the numerical values from R2 and R3, add them together, and store the result in R1. -23- The register banner at the top of each register display provides four (4) selections as shown in the following facsimile: +-----------------------+ | [Lab] Val [Dec] Sci | |-----------------------| | [ Value Window ] | |-----------------------| | [Rn] [ Label Window ] | +-----------------------+ The default selections are "Lab" and "Dec" and are so indicated in the actual display by a "box" enclosing each selection. The box is represented here by enclosed brackets []. The first pair of selections (Lab | Val) control register reference attributes and the second pair (Dec | Sci) control register value display attributes. The selection box provided for each pair indicates the current settings. The label window at the bottom of each register displays the currently assigned label. The default is "blank". The following five paragraphs will describe the procedures for customizing a memory register. [Lab] - Reference by Label: Directs the calculator to use the label appearing in the label window in response to a register reference action. If no label is present, then the register button label "Rn" will be used. To make this selection, do one of the following: o Mouse: Click "Lab" on the register banner o Keyboard: Type [Alt]-L + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number Making this selection will cause its associated selection box to "jump" from the "Val" setting and appear around the "Lab" setting. [Val] - Reference by Value: Directs the calculator to use the numerical value appearing in the value window in response to a "register reference" action. To make this selection, do one of the following: -24- o Mouse: Click "Val" on the register banner o Keyboard: Type [Alt]-V + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number Making this selection will cause its associated selection box to "jump" from the "Lab" setting and appear around the "Val" setting. [Dec] - Decimal Format: Directs the calculator to use the fixed decimal point format for display of numerical values assigned to the register. To make this selection, do one of the following: o Mouse: Click "Dec" on the register banner o Keyboard: Type [Alt]-D + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number Making this selection will cause its associated selection box to "jump" from the "Sci" setting and appear around the "Dec" setting. REMINDER: For decimal displays the calculator will round results to the specified precision (decimal places). If the specified precision for a calculated result will cause the loss of significant digits, the display will revert to scientific notation format. [Sci] - Scientific Format: Directs the calculator to use the scientific notation format for display of numerical values assigned to the register. To make this selection, do one of the following: o Mouse: Click "Sci" on the register banner o Keyboard: Type [Alt]-S + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number Making this selection will cause its associated selection box to "jump" from the "Dec" setting and appear around the "Sci" setting. [Label] - Label Assignment: Allows you to access the label window of a specific register and assign your own symbolic "label" to the register. -25- A label may range from one (1) to twelve (12) alpha-numeric characters in length, including underscores (_) and apostrophies ('), but it must be unique and it must not duplicate any reserved word (see Appendix A ). The range of legal characters allowable for use in creating labels is given in the following: o Single Quote (') o Underscore (_) o Numbers (0--9) o Upper Case letters (A--Z) o Lower Case letters (a--z) When you access a label window, it temporarily becomes an "edit" window where you may enter a new label or edit an existing label. To access a register's label window, do one of the following: o Mouse: Click on the [ Label Window ] o Keyboard: Type [Alt]-E + {1--16} + [ENTER] Where: {1--16} is asking for the register's identification number When access is gained, a blinking cursor will appear in the window and you may then proceed with the edit process. When you have finished entering your new label, press the [ENTER] key to complete the action. To abort the action, press the [ESC] key. For information about other edit control keys that are available to assist you in this process, see the paragraph entitled "The Line Editor", in the section "Editor Control Commands", later in this chapter. _________________________________________________ Function Button The function buttons consist of the nine rows of Processing buttons, beginning with the third row, on the right hand side of the calculator as shown below: [Sin] [Cos] [Tan] [Inv] [Log] [Ln ] [Pi ] [Hyp] [Abs] [Ran] [ ! ] [ e ] [Mod] [Int] [ ( ] [ ) ] [[ ]] [ ^ ] [ E ] [ / ] [ 7 ] [ 8 ] [ 9 ] [ * ] [ 4 ] [ 5 ] [ 6 ] [ - ] [ 1 ] [ 2 ] [ 3 ] [ + ] [ 0 ] [ . ] [ = ] [ " ] -26- These buttons are collectively referred to in this manual as "function buttons" because they either invoke specific mathematical functions or they assist in the creation of mathematical expressions. In actuality they are a mix of functions, operators, specifiers, and numbers. With exception to the [Inv] and [Hyp] buttons, which are discussed later in this section, the following conditions apply: o When you use the mouse and click on a button, the button's label will appear in the entry window at the current cursor position. o If you prefer to use the console keyboard, simply type the label of the desired button (exactly as you see it) directly into the entry window. With the exception of the numeric [ 0 ]--[ 9 ] buttons (which are self explanatory), complete descriptions for each of the remaining buttons are provided in the paragraphs that follow. [Sin] - Sine Function: Invokes the trigonometric sine function of the form: Sin(v). Where v is a numeric value or an expression which reduces to a numeric value. [Cos] - Cosine Function: Invokes the trigonometric cosine function of the form: Cos(v). Where v is a numeric value or an expression which reduces to a numeric value. [Tan] - Tangent Function: Invokes the trigonometric tangent function of the form: Tan(v). Where v is a numeric value or an expression which reduces to a numeric value. [Inv] - Inverse Function Specifier: Sets the inverse function for the [Sin], [Cos], [Tan], and [Hyp] buttons in the form: F(v). Where F is the name of the Function, as listed below, and v is a numeric value or an expression which reduces to a numeric value: Name Function ----- -------------------------- Asin Inverse sine Acos Inverse cosine Atan Inverse tangent Asinh Inverse hyperbolic sine Acosh Inverse hyperbolic cosine Atanh Inverse hyperbolic tangent -27- To invoke a function, do one of the following: Mouse Button Sequence Keyboard --------------------- OR -------- [Inv] + [Sin] Asin [Inv] + [Cos] Acos [Inv] + [Tan] Atan [Inv] + [Hyp] + [Sin] Asinh [Inv] + [Hyp] + [Cos] Acosh [Inv] + [Hyp] + [Tan] Atanh [Hyp] - Hyperbolic Function Specifier: Invokes the hyperbolic function for the [Sin], [Cos], and [Tan] buttons in the form: F(v). Where F is the name of the Function, as listed below, and v is a numeric value or an expression which reduces to a numeric value: Name Function ----- -------------------------- Sinh Hyperbolic sine Cosh Hyperbolic cosine Tanh Hyperbolic tangent To invoke a function, do one of the following: Mouse Button Sequence Keyboard --------------------- OR -------- [Hyp] + [Sin] Sinh [Hyp] + [Cos] Cosh [Hyp] + [Tan] Tanh [Abs] - Absolute Value Function: Returns the absolute value of an expression of the form: Abs(v). Where v is a numeric value or an expression which reduces to a numeric value. [Ran] - Random Number Function: Returns a random number between zero (0) and (v-1) of the form: Ran(v). Where v is an integer value or an expression which reduces to an integer value within the domain (1--32767). [Mod] - Modulus Remainder Function: Performs a modulo division of the form: n Mod m. Where n is the dividend and m is the divisor. The function returns the "remainder", i.e. 7 Mod 4 = 3. [Int] - Modulus Integer Function: Performs a modulo division of the form: n Int m. Where n is the dividend and m is the divisor. The function returns the "integer" number of times n is completely divisible by m, i.e. 7 Int 4 = 1. -28- [Log] - Common Logarithm Function: Invokes the common logarithm (base 10) function of the form: Log(v). Where v is a numeric value or an expression which reduces to a numeric value. [Ln ] - Natural Logarithm Function: Invokes the natural logarithm (base e) function of the form: Ln(v). Where v is a numeric value or an expression which reduces to a numeric value. [Pi ] - Pi Specifier: Represents the value of Pi to fifteen (15) decimal places. [ e ] - Natural Logarithm Specifier: Represents the natural logarithm base (e) value to fifteen (15) decimal places. [ E ] - Scientific Notation Specifier: Represents the base 10 multiplier when used in connection with a value expressed in scientific notation format, i.e. 2.5E4 = 2.5*(10^4) = 25000. [ ! ] - Factorial Operator: Specifies a calculation of the form: n!. Where n is an integer value or an expression which reduces to an integer value within the domain (0 to +170). The factorial result (n!) is defined here as: n! = (n) * (n-1) * (n-2)... * 2 * 1 0! = 1 [ ^ ] - Power Operator: Specifies a calculation of the form: n^m. Where n and m are numeric values or expressions which reduce to numeric values. The result is expressed as: "n" raised to the "m"th power. The square root, cube root, or "m"th root of a number may be computed by doing the following: n^(1/2) = square root of "n" n^(1/3) = cube root of "n" n^(1/m) = "m"th root of "n" [ / ] - Divide Operator: Specifies a calculation of the form: n / m. Where n and m are numeric values or expressions which reduce to numeric values. The result is expressed as: divide "n" by "m". [ * ] - Multiply Operator: Specifies a calculation of the form: n * m. where n and m are numeric values or expressions which reduce to numeric values. The result is expressed as: multiply "n" by "m". -29- [ + ] - Addition Operator: Specifies a calculation of the form: n + m. Where n and m are numeric values or expressions which reduce to numeric values. The result is expressed as: add "m" to "n". [ - ] - Subtraction Operator: Specifies a calculation of the form: n - m. Where n and m are numeric values or expressions which reduce to numeric values. The result is expressed as: subtract "m" from "n". [ . ] - Decimal Point: Provides the means for entering a decimal point. [ = ] - Assignment Operator: Specifies an assignment of the results of a mathematical expression to a register as follows: Rn = {expression} Where: n is a register ID number (1--16) Or: label = {expression} Where: label is the name (symbol) assigned to the register [ " ] - Comment Specifier: Provides the means for entering beginning and ending quote marks to delineate embeded comments. [ ( ] - Left Delimiter: Provides the means for entering the left delimiter of an enclosed mathematical expression. [ ) ] - Right Delimiter: Provides the means for entering the right delimiter of an enclosed mathematical expression. [[ ]] - Space: Provides the means for entering an ASCII "space". This button label looks like a "box" on the actual calculator display. _________________________________________________ Editor Control Smedley's calculator provides two text editors Commands to assist you when entering control information required by the calculator, or when entering mathematical expressions in the entry window. The Line - The line editor provides a set of edit control Editor keys for entering and editing a single line of text. This "mini" editor is used for all entry and edit operations involving calculator control functions. Edit control keys provided by this editor are described in the following: -30- o [Backspace] Deletes one character to the left of the cursor o [<--] Moves cursor one character to the left o [-->] Moves cursor one character to the right o [Home] Moves cursor to the start of the line o [End] Moves cursor to the end of the line o [Esc] Aborts the edit o [Enter] Accepts the edit The Entry - The entry window editor provides the means for Window Editor entering and editing equations, mathematical expressions, and comments in the entry window. Edit control keys supported by this editor are described in the following: o [Backspace] Deletes one character to the left of the cursor o [<--] Moves cursor one character to the left o [-->] Moves cursor one character to the right o [Up Arrow] Moves cursor up one line o [Down Arrow] Moves cursor down one line o [Ctrl]-[<--] Moves cursor left one word o [Ctrl]-[-->] Moves cursor right one word o [Home] Moves cursor to the start of a sentence o [End] Moves cursor to the end of a sentence o [Ctrl]-[Home] Moves cursor to the start of the edit buffer o [Ctrl]-[End] Moves cursor to the end of the edit buffer o [Page Up] Scrolls the display up one page -31- o [Page Down] Scrolls the display down one page o [Esc] Undo last insert or delete edit action (see note below) o [Enter] Inserts a carriage return and moves the cursor to the start of the next display line. The editor only functions in the "insert" mode for typed input, e.g. text when typed is always inserted at the current cursor position. The [Esc] key provides a modest "Undo" feature that allows you to undo the last edit action taken. The Undo feature is turned "on" when you begin typing (inserting) text, or when you use the [Backspace] key to begin deleting text. It is turned "off" by using one of the cursor control keys listed above to reposition the cursor. When you are typing (inserting) text and hit the [Esc] key, all text typed since you last repositioned the cursor will be deleted. If you begin deleting text by repeatedly pressing the [Backspace] key and then press the [Esc] key, the deleted text will be restored. _________________________________________________ Equation Entry and The entry window is where you enter mathematical Editing equations, expressions, and general comments. The calculator does not require such entries to conform to any specific format. In other words, you are free to format your entries to satisfy your own personal cosmetic preferences. When you complete an entry, and click the [Assign] button or press the [F10] key, your entry will be logged exactly as entered and the entry window will be cleared. Basically, when making an entry, you proceed as you would with a typewriter. To end a line you press [Enter], or just continue to type. The "autowrap" feature of the editor automatically advances you to the next line when you reach the end of the current line. If you enter enough lines to fill the current window, the top line scrolls off the screen. When scrolling occurs you can move back and forth in your text, using the previously described scrolling commands, to view and edit scrolled text. Limitations - There are two limitations that apply when making entries: The length of an assignment string and the length of the edit buffer. -32- An assignment string is defined as an equation string (plus comments) whose result is to be assigned (for display) to the entry window or to a memory register. An assignment string may contain up to a maximum of 666 characters. The edit buffer, on the other hand, allows you to enter up to 1200 characters. The key to understanding this seeming disparity is to realize that, while an assignment string is limited to 666 characters, a "comment only" entry may contain up to 1200 characters. More information concerning "comment only" entries and assignment strings is provided later in this section. NOTE: The term "string", as used here, refers to the actual number of typed characters that make up an entry (including spaces and carriage returns) rather than the number of lines that make up the entry's display. For example: If you typed: ABCD [Enter] EFG. You would have two (2) lines of text and a string of eight (8) characters. Case - The mathematical equation parser that evaluates Sensitivity your entries and returns calculated results for display is case sensitive. For example: "Sin" does not equal "sin". Typing "Sin" causes the parser to perform a trigonometric Sine function. If you typed "sin" the parser would treat it as a register label reference. NOTE: All math functions begin with a capital (upper case) letter, i.e. Sin, Cos, Tan, etc. Referencing - Mathematical expressions can be constructed by Registers using a combination of entered numerical values, function references, and register references. An expression such as "35+49" is comprised of two numerical values. An expression such as "Cos(30)*100" illustrates a function reference and two numerical values. An expression like "Sin(45)*100/R2" contains a function reference, two numerical values, and a register reference. A register reference, as the term implies, tells the mathematical equation parser to retrieve the value contained in the referenced register, insert it into the expression at the point where the reference occurred, and continue to evaluate the expression. For the examples that follow, assume that your current register display appears as shown below: -33- +--------------------+ +--------------------+ |[Lab] Val [Dec] Sci | |[Lab] Val Dec [Sci]| |--------------------| |--------------------| |[ 100]| |[ 2.5E2]| |--------------------| |--------------------| |[R1] [alpha ]| |[R2] [beta ]| +--------------------+ +--------------------+ +--------------------+ +--------------------+ |[Lab] Val [Dec] Sci | | Lab [Val][Dec] Sci | |--------------------| |--------------------| |[ 30.000]| |[ .4555]| |--------------------| |--------------------| |[R3] [gamma ]| |[R4] [epsilon ]| +--------------------+ +--------------------+ +--------------------+ +--------------------+ |[Lab] Val [Dec] Sci | |[Lab] Val Dec [Sci]| |--------------------| |--------------------| |[ 0.0000]| |[ 0.0]| |--------------------| |--------------------| |[R5] [mu ]| |[R6] [theta ]| +--------------------+ +--------------------+ Before continuing you should note the "banner" settings for each register, their labels, and their decimal point settings. If you are not sure about their meaning, you should review the section entitled "Register Options Processing" presented earlier in this chapter. When entering mathematical expressions from the keyboard and you wish to reference the contents of a particular register, all you need to do is type the register's button ID or its lable. For example, if you wanted to add the contents of registers R2 and R3 together and assign the result to register R1, you could do so by typing one of the following in the entry window: R1 = R2 + R3 or: alpha = beta + gamma or: any combination thereof Press the [F10] key, or click on the [ASSIGN] button, to initiate the calculation. To perform the same calculation using the mouse you could do the following: Click [SELECT] + [R1] + [R2] + [ + ] + [R3] At this point, given current register options as shown above, the entry window display would show the following: alpha = beta+gamma -34- Press the [F10] key, or click on the [ASSIGN] button, to initiate the calculation. NOTE: In the example immediately above, if no labels had been assigned to registers R1, R2, and R3, the illustrated mouse sequence would produce: R1 = R2+R3 If, when creating a mathematical expression, you wish to retrieve a numeric value currently being displayed in a register's value window, you may do so in one of two ways: o Keyboard: Simply type what you see. o Mouse: First insure that the register's "Val" setting is selected, i.e. the "box" appears around [Val]. Then click on the register's ID button. For example, using the register settings illustrated above, the following mouse sequence: Click [SELECT] + [R1] + [R2] + [ + ] + [R4] Will produce: alpha = beta+.4555 NOTE: When using this feature be aware that the rounded value, just as you see it displayed in the register's value window, will be used in the equation. Using - The mathematical equation parser also supports Delimiters the use of "delimiters" for controlling how mathematical expressions are evaluated with respect to operator precedence. The delimiters supported are: Parentheses (), brackets [], and braces {}. IMPORTANT: The parser does not recognize any precedence between the delimiters themselves. They are provided strictly for cosmetic value to help you create more readable equations. For example, you might write something like: alpha = {beta*[gamma+(mu*theta)]}/epsilon Instead of: alpha = (beta*(gamma+(mu*theta)))/epsilon The only requirement is that when delimiters are used, the number of "left" side delimiters must be matched with an equal number of "right" side delimiters. They do not, however, have -35- to be the same type of delimiter. While not recommended, you could type an equation such as alpha = beta+(gamma*mu] and be perfectly legal. For more information about operator precedence, see "Observing Operator Precedence" earlier in this chapter. Using - As defined here, a comment string is any string Comments of printable characters (including spaces and carriage returns) enclosed within quotation marks ("..."), i.e. "This is a string". There are two ways comments may be used to log descriptive information to the Temporary file. You may create "comment only" entries and you may also add embeded comments anywhere within an assignment string. To create a "comment only" entry, you merely start your entry with a quote (") mark, type whatever information you wish to log, end your entry with another quote (") mark, and then click the [ASSIGN] button (or press [F10]). Your comment will then be logged exactly as was entered, and the entry window will be cleared in preparation for the next entry. For example, you might type something like: "The following set of equations calculates the pull of the moon on the tides of the Sultan sea." Then: Click [ASSIGN] or press [F10]. If you're into cosmetics, you could also type: " The following set of equations " " calculates the pull of the moon " " on the tides of the Sultan sea. " Then: Click [ASSIGN] or press [F10]. As mentioned previously, a "comment only" entry can contain up to 1200 typewritten characters. The calculator will warn you if you attempt to exceed this limit. You may, of course, simply make a series of such entries should you wish to log descriptive information that otherwise would exceed this limit. When used within an assignment string, comments can provide a useful means for documenting the purpose of an equation, or even the individual parts of an equation. -36- For example, you could do something like this: " Calculate the travel time " " between two points, (x1) " " and (x2), along the x-axis " " using the rate of speed (s) " t = " Time equals " (x2-x1)/s " distance/rate " Then: Click [ASSIGN] or press [F10]. This is obviously a bit overdone but you can see the idea. As long as individual components of an equation are separated only by comment strings, the mathematical equation parser will ferret out the complete equation. In this case the parser would find: t=(x2-x1)/s. NOTE: All comments and equation components for assignment string entries are preserved exactly as they were typed. Thus, using this example, were you to now perform a [RCL] action on the register whose name is "t", everything you see typed above would reappear in the entry window. Error - Error detection and display is provided by the Detection calculator for two classes of errors: Parser and Display detected (mathematical) errors, and calculator control errors. In both cases, when an error is detected, an error message will be displayed in the message window denoting the error type. When the parser detects a mathematical error, the error message displayed will be highlighted by two leading and two trailing asterisks, i.e. ** Undefined symbol **. In addition, the edit cursor will be repositioned in the entry window display to reflect the point where the parser detected the error. NOTE: Parser detected errors cause the entry, followed by the error message, to be logged in the session's Temporary file. Calculator control errors occur when you attempt to enter a calculator control command but fail to fully specify the command. For example, if a particular command requires you to enter two parameters and you entered only one, you would get an "Invalid Parameter List" error message. Errors of this type are not logged. -37- _________________________________________________ Creating Register Register equation chains provide a powerful way Equation to create a "system" of equations for a variety Chains of purposes. Three principal uses for equation chains are described in the following: o The ability to breakup long equations into a series of short equations where intermediate results may be viewed. o The ability to create multiple assignments for a single result. o The ability to link a series of equations together and exercise "what if" scenarios. A chain consists of an ordered set of declared parent/child relationships between specified registers. Each register can be designated as a parent for up to eight (8) child registers and, in turn, serve as a child register for up to eight (8) parents as long as no circular references are attempted. NOTE: A circular reference occurs when you attempt to assign a specific register to more than one position in a chain, thus making the register dependent on changes to itself. To construct a chain, click the "Chain" label on the main banner or type [Alt]-[C]. When the "Chain" menu appears, follow the detailed instructions provided in Chapter 3 (Chain Menu) for creating and viewing parent/child register relationships. How Chains - Each time a computational result (a value) is Work assigned to a parent register, the equations associated with each of its designated child registers are computationally re-evaluated and redisplayed. Subsequently, if any of these child registers should also be a parent to one or more child registers, then the equations associated with those child registers will be re-evaluated and redisplayed, and so on. This is similar to the way spreadsheet programs work but with two important differences. With a spreadsheet, when the value of a "cell" is changed, all cells whose associated equations reference that cell are then re-evaluated and redisplayed. Here, only those registers that have been declared to be affected by a change to a parent register will have their associated -38- equations re-evaluated and redisplayed -- And this will occur irrespective of whether or not the equation associated with a child register actually references the contents of the parent register. Order of - When creating register equation chains, it is Evaluation recommended that you first construct a set of diagrams that depict the desired parent/child relationships. Then access the "Chain | Link" menu and make the necessary declarations. As an example, consider the following graphic: Chain Diagrams Chain | Display --------------- ---------------- [1] R1 <-- 2 3 |___[2] R2 <-- 4 | |___[4] R3 <-- 5 | R4 <-- |___[3] R5 <-- 4 |___[5] R6 <-- 2 R7 <-- [6] R8 <-- |___[2] |___[4] | | | A B C Here we have constructed two chain diagrams. The 1st chain diagram shows the following: o R1 has two child registers (R2 + R3) o R2 has one child register (R4) o R3 has one child register (R5) The 2nd chain diagram shows the following: o R6 has one child register (R2) o R2 has one child register (R4) Note: R2 has two parent registers (R1 + R6) The "Chain | Display" on the right hand side of the graphic is what you would see if the "Chain | Display" menu were accessed at this point. Underneath the chain diagrams are the letters "A, B, and C" which are used here to indicate vertical columns. By using this diagramming technique, the evaluation order for a chain can be understood to simply proceed column by column from left to right. -39- In the example above, were a new value to be assigned to a parent register in column "A", the registers shown in column "B" would be evaluated (from top to bottom) then, likewise, the registers in column "C", and so forth. Thus, if a new value were to be assigned to register R1 the evaluation order would be R2, R3, R4, and R5 respectively. Likewise, for register R6 the evaluation order would be R2, then R4. -40- CHAPTER 3 -- MENUS AND OPTIONS _________________________________________________________________ This chapter provides detailed descriptions and instructions for exercising the various options available on the File, Chain, and Options Menus. _________________________________________________ File Menu The File Menu may be accessed by clicking the "File" label on the Main Banner, or by typing [Alt]-[F] on the keyboard. When the File Menu appears you may select any one of the options presented by clicking the option's label or by striking the indicated (highlighted) keyboard key. New - The "File New" option allows you to dictate that the current session is to be terminated and that the current calculator settings are to be reset to their default states. When this option is selected, you will first be presented with a message (in the message window) giving you the opportunity to save the current session (Yes), to not save the session (No), or to abort [Esc] the process. If you then choose to abort, the calculator will immediately exit the File processing function without effecting any changes. If you choose not to abort then the current Text and Settings files will be saved (or not saved) as per choice, and the next available default file names will be assigned as the new session's Text and Settings file names. Finally, the calculator will re-initialize all memory registers to their default states, reset the Temporary file to its "empty" state, display the new (default) Text file name in the message window, and exit the File processing function. NOTE: At this point the default file names have only been "assigned" to the current session. They have not actually been created or opened. A subsequent "Open", "Save" or "Save As" action will determine whether or not they eventually get created, opened, and saved. Open - The "File Open" option allows you to open the Text and Settings files from a previous session, or create and open a new set of session files. When this option is selected, the "File | Open" menu will be presented and a text entry window with a blinking cursor will appear. To open a -41- new (or existing) set of session files, enter the full name (including the file extension) of the desired Text file, i.e. MYFILE.TXT. When finished, just press the [Enter] key to specify a selection. When typing (before pressing the [Enter] key) you may use the [Esc] key to erase the current entry. You may also abort the entry process by taking one of the following actions: o Click the [MAIN] button on the menu or press [F3] to return to the main menu. o Click the [EXIT] button on the menu or press [F4] to exit the File processor. When you specify a Text file name, you will be presented with a message (in the message window) giving you the opportunity to save the current session (Yes), to not save the session (No), or to abort [Esc] the process. If you then choose to abort, the calculator will immediately exit the File processing function without effecting any changes. If you do not elect to abort, the Text file and its companion Settings file will then be opened (or created and opened) for use. If an existing Text file was opened, you will be presented with a message (in the message window) giving you the option to restore the contents of its companion Settings file (Yes), or not to restore the settings (No), or to abort [Esc] the process. If you then choose to abort, the calculator will exit the File processor without effecting any changes. If you elect to restore settings, your current settings and displays will then be replaced with those contained in the specified Settings file. This effectively restores the calculator to the exact "state" it was in when the specified Text file was last saved. If the specified Text or Settings files do not exist, they will be created and opened for use. Once the specified Text and Setting files have been opened, the calculator will display the new Text file name in the message window and exit the File processing function. Save - The "File Save" option allows you to append the contents of the Temporary file to the current session's Text and Settings files. -42- If the current Text and Settings files are not already open, they will be created and opened before the save operation is performed. Once a save operation has been completed, the calculator will display a confirmation message in the message window and will then exit the File processing function. Save As - The "File Save As" option allows you to save the current session's Text and Settings files to a new (or existing) set of session file names. When this option is selected, a "File | Save As" menu will be presented and a text entry window with a blinking cursor will appear. To open a new (or existing) set of session files, enter the full name (including the file extension) of the desired Text file, i.e. MYFILE.TXT. When finished, just press the [Enter] key to specify a selection. When typing you may use the [Esc] key to erase the current entry. You may also abort an entry by taking one of the following actions: o Click the [MAIN] button on the menu or press [F3] to return to the main menu. o Click the [EXIT] button on the menu or press [F4] to exit the File processor. When you specify a Text file name, you will be presented with a message (in the message window) giving you the opportunity to save the current session (Yes), to not save the session (No), or to abort [Esc] the process. If you then choose to abort, the calculator will immediately exit the File processing function without effecting any changes. If an existing Text file was named, you will be presented with a message (in the message window) giving you the option to replace the existing Text and Settings files (Yes), to not replace the existing files (No), or to abort [Esc] the process. If you choose to abort at this point, the calculator will then exit the File processor without effecting any changes. Should you choose to replace the existing set of files, then those files will be overwritten with the contents of the current session's Text and Settings files. Should you choose not to replace the existing files, the blinking cursor will reappear in the text entry window at the -43- end of your previous entry. You may then make another selection or abort the entry process as described above. If you specify a new Text file name, then the new Text file, and its companion Settings file will be created, opened, and used for the save operation. At completion of the "File Save As" operation, the newly specified Text and Settings files will be assigned to the current session, the calculator will display a confirmation message to this effect in the message window, and the File processing function will be terminated. Exit - The "File Exit" option simply terminates the File processing function. Quit - The "File Quit" option provides the means by which to terminate the calculator program. When this option is selected, you will first be presented with a message (in the message window) giving you the opportunity to save the current session (Yes), to not save the session (No), or to abort [Esc] the process. Should you choose to abort, the calculator will immediately exit the File processing function without terminating the program or effecting any changes. If you choose not to abort then the current Text and Settings files will be saved (or not saved) as per choice, and the calculator program will terminate. _________________________________________________ Chain Menu The Chain Menu may be accessed by clicking the "Chain" label on the Main Banner, or by typing [Alt]-[C] on the keyboard. When the Chain Menu appears you may select any one of the options presented by clicking the option's label or by striking the indicated (highlighted) keyboard key. Link - The "Chain Link" option allows you to create register equation chains by linking one or more child registers to a specified parent register. For more information on how chains may be constructed, see Chapter 2: "Creating Register Equation Chains". When this option is selected, the "Chain | Link" menu will be presented and a blinking cursor will appear in the "Parent Register" text entry window. -44- To specify a parent register, simply type the register's ID number, i.e. 1 for R1, 2 for R2, and so on. When satisfied, press the [Enter] key to register your selection. Once you make a selection, any registers previously linked to the specified parent will be displayed in the "Child Registers" entry window followed by a blinking cursor. At this point you may add to, delete from, or otherwise change the list of child registers assigned to the specified parent register. Two things to remember when creating your list of child registers are: (1) The list is limited to eight child registers and, (2) each entry must be separated by at least one "space". When entering (or editing) register selections, in either of the two text entry windows, the usual line edit control keys are available for your use plus the mouse button or keyboard key actions described in the following: o [Esc] -- Will cause the two text entry windows to be cleared without effecting any changes, and the text cursor to be redisplayed in the "Parent Register" entry window. o [RESET] or [F2] -- If taken while the "Child Registers" text entry window is active, this action will cause any and all child registers currently linked to the specified parent to be "un-linked". The two text entry windows will then be cleared, and the text cursor will be redisplayed in the "Parent Register" entry window. o [MAIN] or [F3] -- Will return you to the main (Chain) menu without effecting any changes that have not already been made. o [EXIT] or [F4] -- Will exit the Chain processing function without effecting any changes that have not already been made. When you have finished entering (editing) your child register selections, press the [Enter] key to indicate completion of the link process. At this point (barring any errors) the desired Parent/Child links will be established, the two text entry windows will be erased, and the text cursor will re-appear in the "Parent Register" -45- entry window. You may then continue to create additional parent/child relationships or you may exercise one of the above described button (or keyboard) actions to terminate the process. Display - The "Chain Display" option allows you to view all currently established parent/child register relationships. If you select this option the "Chain | Display" menu will appear. The display consists of two pages listing each register vertically down the left hand side of the page, with each of their respective child registers listed horizontally (in order of assignment) from left to right. The first page lists registers R1--R8 and the second page lists registers R9--R16. The "Chain | Display" menu also provides the following button (keystroke) action options: o [NEXT] or [F1] -- Will toggle between the two display pages. o [RESET] or [F2] -- Will clear all links. If selected, you will be presented with a message in the message window giving you the opportunity to reconsider. o [MAIN] or [F3] -- Will return you to the main (Chain) menu. o [EXIT] or [F4] -- Will exit the Chain processing function. Exit - The "Chain Exit" option simply terminates the Chain processing function. _________________________________________________ Options Menu The Options Menu may be accessed by clicking the "Option" label on the Main Banner, or by typing [Alt]-[O]. When the menu appears you may select any of the four options available by clicking on the option's label or by striking its indicated (highlighted) keyboard key. These options provide the means by which you may customize the "look and feel" of your calculator. Mouse - The "Mouse" option provides the means by which you may change the default settings that control mouse movement, display, and button orientation characteristics. When you select this option, the "Options | Mouse" menu will appear and you may then exercise any of the available options as described in the following: -46- o Switch Cursor -- Causes the mouse cursor image to switch from a "left" pointing arrow to a "right" pointing arrow, and vice versa: [<-->] Toggles the cursor setting o Switch Buttons -- Changes the "logical" orientation of the mouse buttons, i.e. Left becomes "right" and Right becomes "left", and vice versa: [<-->] Toggles the button settings o Horizontal Tracking Speed -- Changes the mouse sensitivity to horizontal movement: [<---] Decreases sensitivity [--->] Increases sensitivity o Vertical Tracking Speed -- Changes the mouse sensitivity to vertical movement: [<---] Decreases sensitivity [--->] Increases sensitivity o Acceleration Tracking Speed -- Changes the sensitivity speed for accelerating the cursor's movement on the screen in response to "quick" mouse movements: [<---] Decreases sensitivity [--->] Increases sensitivity In addition to the options described above, the "Options | Mouse" menu also provides the button (keystroke) action options as described below: o [RESET] or [F2] -- Resets mouse control parameters to the exact state they were in when you activated this function. o [MAIN] or [F3] -- Returns you to the main (Options) menu. o [EXIT] or [F4] -- Exits the Options processing function. Colors - The "Colors" option provides the means by which you may change the default color settings that make up the calculator display. When you select this option, the "Options | Colors" menu will appear and you will be presented with four lists of objects whose colors may be changed, and an array of colored buttons representing the color choices available. -47- In the center of the menu display, you will see the object select window and the announcement: "Select an Object". Beneath this window are two color select windows labeled "Object Color" and "Text Color". To change the color of an object, first select the desired object by clicking on the object's name or by striking its indicated (highlighted) keyboard key. The current background color of the selected object will then appear in the object select window and the complete name of the object will be displayed using its current text color. At this time, the two color select windows will also reflect the object's current background and text colors. Once an object has been selected, you may make color changes by doing one of the following: o BACKGROUND COLOR: Mouse: Use your "Left" mouse button and click on the desired color button. Keyboard: Toggle the Object keyboard key [O] until the desired background color appears. o TEXT COLOR: Mouse: Use your "Right" mouse button and click on the desired color button. Keyboard: Toggle the Text keyboard key [T] until the desired text color appears. When you are satisfied with your color choices click the [SAVE] button at the bottom of the menu, or press the [F1] keyboard key, to see the full effect of your selections. NOTE: All color changes thus made will take effect immediately. However, color changes made to the Entry Window will not be visible until you exit the Options processor. In addition to the procedures discussed above, the "Options | Colors" menu also provides the button (keystroke) action options described in the following: o [RESET] or [F2] -- Resets color control parameters to the exact state they were in when you activated this function. -48- o [MAIN] or [F3] -- Returns you to the main (Options) menu. o [EXIT] or [F4] -- Exits the Options processing function. Defaults - The "Defaults" option allows you to reset all mouse, colors, and register control parameters to their default states. When this option is selected, the "Options | Defaults" menu will appear and you may then exercise any (or all) of the three reset options presented. To exercise a reset option, simply click its corresponding action button [-->] or strike its indicated (highlighted) keyboard key. When finished, you may exercise either one of the two return options described below: o [MAIN] or [F3] -- Returns you to the main (Options) menu. o [EXIT] or [F4] -- Exits the Options processing function. Exit - The "Exit" option will terminate the Options processing function. -49- APPENDIX A -- RESERVED WORDS _________________________________________________________________ This Appendix provides a list of characters and words that may not be assigned as symbolic names (labels) to a memory register. _________________________________________________ Register ID Button Labels R1, R2, R3, ... R16 _________________________________________________ Function Button Labels Abs, Cos, e, E, Hyp, Int, Inv, Ln, Log, Mod, Pi, Ran, Sin, Tan _________________________________________________ Secondary Math Functions Acos, Acosh, Asin, Asinh, Atan, Atanh, Cosh, Sinh, Tanh -50- APPENDIX B -- ERROR MESSAGES _________________________________________________________________ This Appendix provides a list of error messages generated by the calculator, and a brief description of the circumstances which can cause the respective error message to occur. _________________________________________________________________ Calculator Control Processing Error Messages _________________________________________________________________ [ Illegal Parameter in List ]: Occurs when a calculator control parameter is entered that is outside of its allowable range. [ Illegal Precision ]: Occurs when the "Fix" control option is exercised and the number of decimal places specified is outside the range of 0--14. [ Invalid Parameter List ]: Occurs when the number of control parameters entered does not match the number required for the selected action. _________________________________________________________________ Mathematical Parsing and Evaluation Error Messages _________________________________________________________________ [ Domain error ]: Occurs when an argument (value) supplied to a mathematical function is outside the domain (range) of the function, such as: Log(-1). [ Equation string limit exceeded ]: Occurs if the length of an equation string (including carriage returns) exceeds 666 entered characters. [ Factorial overflow ]: Occurs when a factorial argument is greater than 170!. [ Float divide by zero ]: Occurs when an attempt is made to divide a value by zero (0.0). [ Invalid operation ]: Occurs when an equation cannot be parsed as entered, such as: R1 + R2 = 3. [ Illegal unary operation ]: Occurs when an attempt is made to apply an illegal unary operator, such as: R1 = *10. [ Invalid right delimiter ]: Occurs when a right delimiter (},),]) is encountered that does not have a corresponding left delimiter, such as: R1 = (30) + 3). [ Illegal factorial ]: Occurs when a factorial argument is a non-integer value, such as: 1.5! [ Left delimiter limit exceeded ]: Occurs when the number of nested left delimiters exceeds 24 before encountering a right delimiter, i.e. 24 of these (..(... before one of these ...). -51- [ Numeric overflow ]: Occurs when the result of a mathematical operation would result in a value greater than 1.797693E+308. [ Numeric underflow ]: Occurs when the result of a mathematical operation would result in a value less than 2.225074E-308. [ Operator expected ]: Occurs when a mathematical operator has been omitted from an expression, such as: R1 = (3) R2. [ Quote mark expected ]: Occurs when a comment is indicated but no comment terminating quote mark (") has been encountered. [ Right delimiter expected ]: Occurs when the number of nested right delimiters in an expression is less than the number of nested left delimiters, i.e. (((..)). [ Singularity error ]: Occurs when the result from an argument (value) supplied to a function is either undefinable or cannot be approximated, such as: Log(0). [ Significance loss ]: Occurs when a mathematical operation would result in a total loss of significant digits, such as: Sin(10E+70). [ Undefined symbol ]: Occurs when the parser encounters a name (symbol) reference in an equation which does not match any of those currently assigned to the memory registers. [ Value expected ]: Occurs when an mathematical operator or function is encountered in an equation which is not followed by a value reference, such as: R1 = 3 + Sin. -52-